//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//

package com.restaurant.application.minifacade.data;

import com.google.common.collect.Lists;
import com.nebutown.generation.Convert;
import com.nebutown.generation.PickableBean;
import java.util.List;

public class CardBO implements PickableBean {
    public static final String FN_CARDID = "cardId";
    public static final String FN_CONTENT = "content";
    public static final String FN_CARDTYPE = "cardType";
    public static final String FN_FULLMONEY = "fullMoney";
    public static final String FN_MINUSMONEY = "minusMoney";
    public static final String FN_ENDTIME = "endTime";
    public static final String FN_STARTTIME = "startTime";
    public static final String FN_ERCODE = "erCode";
    public static final String FN_STATUS = "status";
    public static final String FN_STATE = "state";
    public static final String FN_REMARK = "remark";
    public static final String FN_VERSION = "version";
    public static final List<String> FIELD_NAMES = Lists.newArrayList(new String[]{"cardId", "content", "cardType", "fullMoney", "minusMoney", "endTime", "startTime", "erCode", "status", "state", "remark", "version"});
    private String cardId;
    private String content;
    private String cardType;
    private Double fullMoney;
    private Double minusMoney;
    private String endTime;
    private String startTime;
    private String erCode;
    private String status;
    private String state;
    private String remark;
    private Integer version;

    public CardBO(String cardId, String content, String cardType, Double fullMoney, Double minusMoney, String endTime, String startTime, String erCode, String status, String state, String remark, Integer version) {
        this.setCardId(cardId);
        this.setContent(content);
        this.setCardType(cardType);
        this.setFullMoney(fullMoney);
        this.setMinusMoney(minusMoney);
        this.setEndTime(endTime);
        this.setStartTime(startTime);
        this.setErCode(erCode);
        this.setStatus(status);
        this.setState(state);
        this.setRemark(remark);
        this.setVersion(version);
    }

    public CardBO() {
    }

    public CardBO duplicate() {
        CardBO result = new CardBO();
        result.cardId = this.cardId;
        result.content = this.content;
        result.cardType = this.cardType;
        result.fullMoney = this.fullMoney;
        result.minusMoney = this.minusMoney;
        result.endTime = this.endTime;
        result.startTime = this.startTime;
        result.erCode = this.erCode;
        result.status = this.status;
        result.state = this.state;
        result.remark = this.remark;
        result.version = this.version;
        return result;
    }

    public String toString() {
        return Convert.toJson(this);
    }

    public String getCardId() {
        return this.cardId;
    }

    public void setCardId(String value) {
        this.cardId = value;
    }

    public CardBO withCardId(String value) {
        this.setCardId(value);
        return this;
    }

    public CardBO withCardId(String value, String defaultValue) {
        this.setCardId(value == null ? defaultValue : value);
        return this;
    }

    public String getContent() {
        return this.content;
    }

    public void setContent(String value) {
        this.content = value;
    }

    public CardBO withContent(String value) {
        this.setContent(value);
        return this;
    }

    public CardBO withContent(String value, String defaultValue) {
        this.setContent(value == null ? defaultValue : value);
        return this;
    }

    public String getCardType() {
        return this.cardType;
    }

    public void setCardType(String value) {
        this.cardType = value;
    }

    public CardBO withCardType(String value) {
        this.setCardType(value);
        return this;
    }

    public CardBO withCardType(String value, String defaultValue) {
        this.setCardType(value == null ? defaultValue : value);
        return this;
    }

    public Double getFullMoney() {
        return this.fullMoney;
    }

    public void setFullMoney(Double value) {
        this.fullMoney = value;
    }

    public CardBO withFullMoney(Double value) {
        this.setFullMoney(value);
        return this;
    }

    public CardBO withFullMoney(Double value, Double defaultValue) {
        this.setFullMoney(value == null ? defaultValue : value);
        return this;
    }

    public Double getMinusMoney() {
        return this.minusMoney;
    }

    public void setMinusMoney(Double value) {
        this.minusMoney = value;
    }

    public CardBO withMinusMoney(Double value) {
        this.setMinusMoney(value);
        return this;
    }

    public CardBO withMinusMoney(Double value, Double defaultValue) {
        this.setMinusMoney(value == null ? defaultValue : value);
        return this;
    }

    public String getEndTime() {
        return this.endTime;
    }

    public void setEndTime(String value) {
        this.endTime = value;
    }

    public CardBO withEndTime(String value) {
        this.setEndTime(value);
        return this;
    }

    public CardBO withEndTime(String value, String defaultValue) {
        this.setEndTime(value == null ? defaultValue : value);
        return this;
    }

    public String getStartTime() {
        return this.startTime;
    }

    public void setStartTime(String value) {
        this.startTime = value;
    }

    public CardBO withStartTime(String value) {
        this.setStartTime(value);
        return this;
    }

    public CardBO withStartTime(String value, String defaultValue) {
        this.setStartTime(value == null ? defaultValue : value);
        return this;
    }

    public String getErCode() {
        return this.erCode;
    }

    public void setErCode(String value) {
        this.erCode = value;
    }

    public CardBO withErCode(String value) {
        this.setErCode(value);
        return this;
    }

    public CardBO withErCode(String value, String defaultValue) {
        this.setErCode(value == null ? defaultValue : value);
        return this;
    }

    public String getStatus() {
        return this.status;
    }

    public void setStatus(String value) {
        this.status = value;
    }

    public CardBO withStatus(String value) {
        this.setStatus(value);
        return this;
    }

    public CardBO withStatus(String value, String defaultValue) {
        this.setStatus(value == null ? defaultValue : value);
        return this;
    }

    public String getState() {
        return this.state;
    }

    public void setState(String value) {
        this.state = value;
    }

    public CardBO withState(String value) {
        this.setState(value);
        return this;
    }

    public CardBO withState(String value, String defaultValue) {
        this.setState(value == null ? defaultValue : value);
        return this;
    }

    public String getRemark() {
        return this.remark;
    }

    public void setRemark(String value) {
        this.remark = value;
    }

    public CardBO withRemark(String value) {
        this.setRemark(value);
        return this;
    }

    public CardBO withRemark(String value, String defaultValue) {
        this.setRemark(value == null ? defaultValue : value);
        return this;
    }

    public Integer getVersion() {
        return this.version;
    }

    public void setVersion(Integer value) {
        this.version = value;
    }

    public CardBO withVersion(Integer value) {
        this.setVersion(value);
        return this;
    }

    public CardBO withVersion(Integer value, Integer defaultValue) {
        this.setVersion(value == null ? defaultValue : value);
        return this;
    }

    public Object getValueOf(String name) {
        byte var3 = -1;
        switch(name.hashCode()) {
            case -2129294769:
                if (name.equals("startTime")) {
                    var3 = 6;
                }
                break;
            case -1693757583:
                if (name.equals("fullMoney")) {
                    var3 = 3;
                }
                break;
            case -1607243192:
                if (name.equals("endTime")) {
                    var3 = 5;
                }
                break;
            case -1367605173:
                if (name.equals("cardId")) {
                    var3 = 0;
                }
                break;
            case -1296035782:
                if (name.equals("erCode")) {
                    var3 = 7;
                }
                break;
            case -934624384:
                if (name.equals("remark")) {
                    var3 = 10;
                }
                break;
            case -892481550:
                if (name.equals("status")) {
                    var3 = 8;
                }
                break;
            case -8227222:
                if (name.equals("cardType")) {
                    var3 = 2;
                }
                break;
            case 109757585:
                if (name.equals("state")) {
                    var3 = 9;
                }
                break;
            case 351608024:
                if (name.equals("version")) {
                    var3 = 11;
                }
                break;
            case 951530617:
                if (name.equals("content")) {
                    var3 = 1;
                }
                break;
            case 1811910192:
                if (name.equals("minusMoney")) {
                    var3 = 4;
                }
        }

        switch(var3) {
            case 0:
                return this.getCardId();
            case 1:
                return this.getContent();
            case 2:
                return this.getCardType();
            case 3:
                return this.getFullMoney();
            case 4:
                return this.getMinusMoney();
            case 5:
                return this.getEndTime();
            case 6:
                return this.getStartTime();
            case 7:
                return this.getErCode();
            case 8:
                return this.getStatus();
            case 9:
                return this.getState();
            case 10:
                return this.getRemark();
            case 11:
                return this.getVersion();
            default:
                return null;
        }
    }

    public void setValueOf(String name, Object value) {
        byte var4 = -1;
        switch(name.hashCode()) {
            case -2129294769:
                if (name.equals("startTime")) {
                    var4 = 6;
                }
                break;
            case -1693757583:
                if (name.equals("fullMoney")) {
                    var4 = 3;
                }
                break;
            case -1607243192:
                if (name.equals("endTime")) {
                    var4 = 5;
                }
                break;
            case -1367605173:
                if (name.equals("cardId")) {
                    var4 = 0;
                }
                break;
            case -1296035782:
                if (name.equals("erCode")) {
                    var4 = 7;
                }
                break;
            case -934624384:
                if (name.equals("remark")) {
                    var4 = 10;
                }
                break;
            case -892481550:
                if (name.equals("status")) {
                    var4 = 8;
                }
                break;
            case -8227222:
                if (name.equals("cardType")) {
                    var4 = 2;
                }
                break;
            case 109757585:
                if (name.equals("state")) {
                    var4 = 9;
                }
                break;
            case 351608024:
                if (name.equals("version")) {
                    var4 = 11;
                }
                break;
            case 951530617:
                if (name.equals("content")) {
                    var4 = 1;
                }
                break;
            case 1811910192:
                if (name.equals("minusMoney")) {
                    var4 = 4;
                }
        }

        switch(var4) {
            case 0:
                this.setCardId((String)value);
                return;
            case 1:
                this.setContent((String)value);
                return;
            case 2:
                this.setCardType((String)value);
                return;
            case 3:
                this.setFullMoney((Double)value);
                return;
            case 4:
                this.setMinusMoney((Double)value);
                return;
            case 5:
                this.setEndTime((String)value);
                return;
            case 6:
                this.setStartTime((String)value);
                return;
            case 7:
                this.setErCode((String)value);
                return;
            case 8:
                this.setStatus((String)value);
                return;
            case 9:
                this.setState((String)value);
                return;
            case 10:
                this.setRemark((String)value);
                return;
            case 11:
                this.setVersion((Integer)value);
                return;
            default:
        }
    }

    public boolean hasField(String name) {
        return FIELD_NAMES.contains(name);
    }

    public int hashCode() {
        return this.signature().hashCode();
    }

    public boolean equals(Object o) {
        return !(o instanceof CardBO) ? false : this.signature().equals(((CardBO)o).signature());
    }

    public String signature() {
        throw new RuntimeException("Bean CardBO has no signature defined, no hash code or equals possible.");
    }
}
